# 1.现在用户在进商场之前需要从10张优惠券中，随机抽取一张优惠券。比如抽到一个空凋的8折优惠券，后面在购物的过程中，空凋就可以按照8折后的价格来购买。

# 2.优化购物小条的人性化打印。购物时间，卡余额，购物数量，购买总商品的价值。

# 3.	添加退货功能。在购买途中，某个商品不要了，退回到购物架中！

from datetime import datetime

                                                   #打折模块不知道咋写


#定义商品函数
class Product:
    def __init__(self, name, price):
        self.name = name
        self.price = price



#循环打印物品和价格
products = [
    Product("苹果", 5),
    Product("茅台", 200),
    Product("猪肉", 50),
    Product("沐浴露", 25),
    Product("冰红茶", 3),
    Product("利群", 25)
]



count = 0                                                       #计数器
buy_account = 200
shopping_cart = list()                                         #空购物车
items = ["苹果","茅台","猪肉","沐浴露","冰红茶","利群"]             #商品列表

for product in products:
    print(f"商品：{product.name}，价格：{product.price}元")      #输出超市物品清单及价格

print("欢迎购物，您的账户余额为：", buy_account)
print("输入“Q”或“q”退出购物系统")

while buy_account > 0:

    item = input("您想买什么？")
    if item == "Q" or item == "q" :
        print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
        print("您购买了",shopping_cart)
        print("共计%d件商品,剩余余额：%d元"%(count,buy_account))
        break
    if item == "退款" :                                           #退款模块
        x = input("请输入想要退货的商品名称")
        if bool( x in items and x in shopping_cart) == True :
            match x :
                case "苹果" :
                    shopping_cart.remove(x)                         #购物车-1
                    count -= 1                                      #商品总数-1
                    buy_account = buy_account + 5                    #退款
                    print("退款成功，当前余额为",buy_account)
                    continue
#............................................省略好几个商品退款.............................................................

    if bool(item in items) == True :
        match item:
            case "苹果" :
                if buy_account > 5 :
                    shopping_cart.append("苹果")
                    buy_account = buy_account - 5
                    count = count + 1
                    print("苹果添加到购物车恭喜购买成功，您的卡余额还剩%d"%buy_account)
                else:
                    print("余额不足，请重新选择")
                    continue
            case "茅台" :
                    if buy_account > 200:
                        shopping_cart.append("茅台")
                        buy_account = buy_account - 200
                        count = count + 1
                        print("茅台添加到购物车恭喜购买成功，您的卡余额还剩%d"%buy_account)
                    else:
                        print("余额不足，请重新选择")
                        continue
            case "猪肉" :
                        if buy_account > 50:
                            shopping_cart.append("猪肉")
                            buy_account = buy_account - 50
                            count = count + 1
                            print("猪肉添加到购物车恭喜购买成功，您的卡余额还剩%d"%(buy_account))
                        else:
                            print("余额不足，请重新选择")
                            continue
            case "沐浴露" :
                        if buy_account > 25:
                            shopping_cart.append("沐浴露")
                            buy_account = buy_account - 25
                            count = count + 1
                            print("沐浴露添加到购物车恭喜购买成功，您的卡余额还剩%d"%buy_account)
                        else:
                            print("余额不足，请重新选择")
                            continue
            case "冰红茶" :
                        if buy_account > 3:
                            shopping_cart.append("冰红茶")
                            buy_account = buy_account - 3
                            count = count + 1
                            print("冰红茶添加到购物车恭喜购买成功，您的卡余额还剩%d"%buy_account)
                        else:
                            print("余额不足，请重新选择")
                            continue
            case "利群" :
                        if buy_account > 25:
                            shopping_cart.append("利群")
                            buy_account = buy_account - 25
                            count = count + 1
                            print("利群添加到购物车恭喜购买成功，您的卡余额还剩%d"%buy_account)
                        else:
                            print("余额不足，请重新选择")
                            continue
    else :
        print("暂无此商品，请重新选择")
        continue

print("欢迎下次光临！")
